package com.neuedu.his.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.neuedu.his.po.*;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface RegisterService extends IService<Register> {


    // 保存挂号信息
    Map<String, Object> calculateAndSaveRegistration(Register register);

    // 获取科室列表
    List<Department> getDepartments();

    // 根据科室ID获取医生列表
    List<User> getDoctorsByDeptId(Integer deptId);

    // 获取挂号级别列表
    List<Registlevel> getRegistLevels();

    // 获取性别选项列表
    List<Constantitem> getGenders();

    // 计算年龄
    int calculateAge(java.util.Date birthDate, java.util.Date visitDate);

    // 根据挂号级别ID获取挂号费用
    BigDecimal getRegistFeeById(Integer registLevelId);

    // 计算总费用
    BigDecimal calculateTotalFee(Integer registLevelId, boolean isBook);
}
